package com.gxa.insurance.service;

import com.gxa.insurance.exception.BusinessException;
import com.gxa.insurance.pojo.Driver;
import io.swagger.models.auth.In;

import java.util.List;
import java.util.Map;

/**
 * @author Min
 */
public interface DriverService {
    /**
     * 查询 所有司机的邮件
     * @return
     */
    List<Driver> selectAllEmail();

    /**
     * 添加司机
     * @param driver
     * @return
     */
    Integer add(Driver driver) throws Exception;

    /**
     * 获取司机列表
     * @param page
     * @param size
     * @return
     */
    Map<String,Object> getDriverlist(Integer page, Integer size);

    /**
     * 查询全部
     * @return
     */
    List<Driver> selectAll();

    /**
     * 根据姓名和手机号模糊查询
     * @param map
     * @return
     */
    Map<String,Object> getLikeList(Map map);

    /**
     * 更新司机状态
     * @param id
     * @param status
     * @return
     * @throws Exception
     */
    Integer update(Integer id,Integer status) throws Exception;

    /**
     * 司机端登录的方法
     * @param phone
     * @param pwd
     * @return
     */
    Map<String,Object> login(String phone,String pwd) throws Exception;

    /**
     * 个人中心_根据手机和密码查询司机是否存在
     * @param phone
     * @param pwd
     * @return
     * @throws Exception
     */
    Boolean selectByPhoneAndPwd(String phone, String pwd) throws Exception;

    /**
     * 修改司机的密码
     * @param phone
     * @param pwd
     * @return
     * @throws BusinessException
     */
    Integer updatePwd(String phone,String pwd) throws BusinessException;

    /**
     * 修改司机手机号
     * @param beforePhone
     * @param nowPhone
     * @return
     * @throws BusinessException
     */
    Integer updatePhone(String beforePhone,String nowPhone) throws BusinessException;
}
